Variable Recurring Payments APIs
Domestic VRP Consent Examples
This section provides examples of requests and responses for the Domestic VRP Consents APIs:
VRP with Debtor Account and Creditor Account specified by TPP
Domestic VRP Consents APIs
POST request: Domestic VRP consents request
This API endpoint allows the TPP to ask an ASPSP to create a new Domestic VRP consent resource. The POST action indicates to the ASPSP that a Domestic VRP consent has been staged. At this point, the PSU may not have been identified by the ASPSP, and the request payload may not contain any information of the account that should be debited.
The endpoint allows the TPP to send a copy of the consent (between PSU and TPP) to the ASPSP for the PSU to authorise. The ASPSP creates the Domestic VRP consent resource and responds with a unique Consent ID to refer to the resource.
POST /domestic-vrp-consents HTTP/1.1
curl -X POST \
https://api-sandbox.bankofireland.com/1/api/open-banking/v3.1.10/TPP/domestic-payment-consents \
Authorization: Bearer 2YotnFZFEjr1zCsicMWpAA
x-idempotency-key: FRESCO.21302.GFX.20
x-jws-signature: TGlmZSdzIGEgam91cm5leSBub3QgYSBkZXN0aW5hdGlvbiA=..T2ggZ29vZCBldmVuaW5nIG1yIHR5bGVyIGdvaW5nIGRvd24gPw==
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
Accept: application/json
{
"Data": {
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"Initiation": {
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
}
}
Header parameters :
Parameter | Example value | Description |
---|---|---|
authorization | Bearer 2YotnFZFEjr1zCsicMWpAA | The token obtained in step 1(Get access token). |
x-jws-signature | TGlmZSdzIGEgam91cm5leSBub3QgYSBkZXN0aW5hdGlvbiA=..T2ggZ29vZCBldmVuaW5nIG1yIHR5bGVyIGdvaW5nIGRvd24gPw== | Header containing a detached JWS of the payload. Mandatory for requests that contain a payload. Please refer to the processes of generating one here. |
POST response: Domestic VRP consents
HTTP/1.1 201 Created
x-jws-signature: V2hhdCB3ZSBnb3QgaGVyZQ0K..aXMgZmFpbHVyZSB0byBjb21tdW5pY2F0ZQ0K
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
"Data": {
"ConsentId": "fe615446-e53a-45ed-954c-ae5d1f97a93b",
"CreationDateTime": "2017-06-05T15:15:15+00:00",
"Status": "Authorised",
"StatusUpdateDateTime": "2017-06-05T15:15:15+05:00",
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"Initiation": {
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
},
"Links": {
"Self": "https://api.alphabank.com/open-banking/v3.1/TPP/domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b"
},
"Meta": {}
}
GET request: Domestic VRP consents
A TPP can optionally retrieve a domestic VRP consent resource that they have created to check its status. The available status codes for the domestic VRP consent resource are:
Status | Status Description |
---|---|
AwaitingAuthorisation | The consent resource is awaiting PSU authorisation. |
Rejected | The consent resource has been rejected. |
Authorised | The consent resource has been successfully authorised. |
GET /domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b HTTP/1.1
curl -X GET \
https://api-sandbox.bankofireland.com/1/api/open-banking/v3.1.10/TPP/domestic-vrp-consents/c4cd37de-aa69-4fbe-83aa-198b807948d6 \
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
x-fapi-auth-date: Sun, 10 Sep 2017 19:43:31 GMT
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json
GET response: Domestic VRP consents
HTTP/1.1 200 OK
x-jws-signature: V2hhdCB3ZSBnb3QgaGVyZQ0K..aXMgZmFpbHVyZSB0byBjb21tdW5pY2F0ZQ0K
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
"Data": {
"ConsentId": "fe615446-e53a-45ed-954c-ae5d1f97a93b",
"CreationDateTime": "2017-06-05T15:15:15+00:00",
"Status": "Authorised",
"StatusUpdateDateTime": "2017-06-05T15:15:15+05:00",
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"Initiation": {
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
},
"Links": {
"Self": "[https://api.alphabank.com/open-banking/v3.1/TPP/domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b](https://api.alphabank.com/open-banking/v3.1/TPP/domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b)"
},
"Meta": {}
}
VRP with Debtor Account specified during consent authorisation
In this scenario, the TPP creates a domestic-vrp-consent where the debtor account is specified during consent authorization.
The PSU selects the debtor account during consent authorisation.
POST request: Domestic VRP consents
POST /domestic-vrp-consents HTTP/1.1
curl -X POST \
[https://api-sandbox.bankofireland.com/1/api/open-banking/v3.1.10/TPP/domestic-payment-consents](https://api-sandbox.bankofireland.com/1/api/open-banking/v3.1.10/TPP/domestic-payment-consents) \
Authorization: Bearer 2YotnFZFEjr1zCsicMWpAA
x-idempotency-key: FRESCO.21302.GFX.20
x-jws-signature: TGlmZSdzIGEgam91cm5leSBub3QgYSBkZXN0aW5hdGlvbiA=..T2ggZ29vZCBldmVuaW5nIG1yIHR5bGVyIGdvaW5nIGRvd24gPw==
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
Accept: application/json
{
"Data": {
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"Initiation": {
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
}
}
POST response: Domestic VRP consents
HTTP/1.1 201 Created
x-jws-signature: V2hhdCB3ZSBnb3QgaGVyZQ0K..aXMgZmFpbHVyZSB0byBjb21tdW5pY2F0ZQ0K
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
"Data": {
"ConsentId": "fe615446-e53a-45ed-954c-ae5d1f97a93b",
"CreationDateTime": "2017-06-05T15:15:15+00:00",
"Status": "Authorised",
"StatusUpdateDateTime": "2017-06-05T15:15:15+05:00",
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"Initiation": {
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
},
"Links": {
"Self": "https://api.alphabank.com/open-banking/v3.1/TPP/domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b"
},
"Meta": {}
}
GET request: Domestic VRP consents
GET /domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b HTTP/1.1
curl -X GET \
https://api-sandbox.bankofireland.com/1/api/open-banking/v3.1.10/TPP/domestic-vrp-consents/c4cd37de-aa69-4fbe-83aa-198b807948d6 \
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
x-fapi-auth-date: Sun, 10 Sep 2017 19:43:31 GMT
x-fapi-customer-ip-address: 104.25.212.99
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Accept: application/json
GET response: Domestic VRP consents
HTTP/1.1 200 OK
x-jws-signature: V2hhdCB3ZSBnb3QgaGVyZQ0K..aXMgZmFpbHVyZSB0byBjb21tdW5pY2F0ZQ0K
x-fapi-interaction-id: 93bac548-d2de-4546-b106-880a5018460d
Content-Type: application/json
{
"Data": {
"ConsentId": "fe615446-e53a-45ed-954c-ae5d1f97a93b",
"CreationDateTime": "2017-06-05T15:15:15+00:00",
"Status": "Authorised",
"StatusUpdateDateTime": "2017-06-05T15:15:15+05:00",
"ReadRefundAccount": "Yes",
"ControlParameters": {
"PSUAuthenticationMethods": [ "UK.OBIE.SCANotRequired" ],
"VRPType": "UK.OBIE.VRPType.Sweeping",
"ValidFromDateTime": "2017-06-05T15:15:13+00:00",
"ValidToDateTime": "2020-06-05T15:15:13+00:00",
"MaximumIndividualAmount": {
"Amount": "100.00",
"Currency": "GBP"
},
"PeriodicLimits": [
{
"Amount": "200.00",
"Currency": "GBP",
"PeriodAlignment": "Consent",
"PeriodType": "Week"
}
]
},
"DebtorAccount": {
"SchemeName": "UK.OBIE.IBAN",
"Identification": "GB76LOYD30949301273801",
"Name": "Marcus Sweepimus"
},
"Initiation": {
"CreditorAccount": {
"SchemeName": "SortCodeAccountNumber",
"Identification": "30949330000010",
"SecondaryIdentification": "Roll 90210",
"Name": "Marcus Sweepimus"
},
"RemittanceInformation": {
"Reference": "Sweepco"
}
}
},
"Risk": {
"PaymentContextCode": "TransferToThirdParty"
},
"Links": {
"Self": "https://api.alphabank.com/open-banking/v3.1/TPP/domestic-vrp-consents/fe615446-e53a-45ed-954c-ae5d1f97a93b"
},
"Meta": {}
}